
FROM python:3.9-alpine3.12

WORKDIR /home/lina/server

# EXPOSE 仅仅是声明容器打算使用什么端口而已，并不会自动在宿主进行端口映射
# -p，是映射宿主端口和容器端口，换句话说，就是将容器的对应端口服务公开给外界访问
EXPOSE 5000

ENV FLASK_APP=lina

COPY requirements.txt requirements.txt

RUN pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

COPY . .

CMD [ "python3", "-m" , "flask", "run", "--host=0.0.0.0"]


# CMD不同于RUN，CMD用于指定在容器启动时所要执行的命令，而RUN用于指定镜像构建时所要执行的命令。